package trabajadores;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Clase de los empleados de mi empresa
 * 
 * @author Mariano Fernández López
 */
public class Empleado extends Trabajador {
    
    private float irpf;
    private float sueldoAnual;
    private float cotizacionSS;

    public Empleado(String nif,
                    String nombre,
                    String ap1,
                    String ap2,
                    int telefono,
                    float irpf,
                    float sueldoAnual,
                    float cotizacionSS,
                    Sexo sexo)
    {
        super(nif, nombre, ap1, ap2, telefono, sexo);
        this.irpf = irpf;
        this.sueldoAnual = sueldoAnual;
        this.cotizacionSS = cotizacionSS;
    }

    @Override
    public String toString() {
        return super.toString() + "IRPF: " + irpf + "\n" + 
                "Sueldo anual: " + sueldoAnual + cotizacionSS + "\n";
    }
    
    
    /**
     * @return the irpf
     */
    public float getIrpf() {
        return irpf;
    }

    /**
     * @param irpf the irpf to set
     */
    public void setIrpf(float irpf) {
        this.irpf = irpf;
    }

    /**
     * @return the sueldoAnual
     */
    public float getSueldoAnual() {
        return sueldoAnual;
    }

    /**
     * @param sueldoAnual the sueldoAnual to set
     */
    public void setSueldoAnual(float sueldoAnual) {
        this.sueldoAnual = sueldoAnual;
    }

    /**
     * @return the cotizacionSS
     */
    public float getCotizacionSS() {
        return cotizacionSS;
    }

    /**
     * @param cotizacionSS the cotizacionSS to set
     */
    public void setCotizacionSS(float cotizacionSS) {
        this.cotizacionSS = cotizacionSS;
    }

    @Override
    public float coste() {
        return this.getSueldoAnual()*(1+this.getIrpf()+this.getCotizacionSS());
    }

    @Override
    public Trabajador clone() {
        return new Empleado(nif,
                    nombre,
                    ap1,
                    ap2,
                    telefono,
                    irpf,
                    sueldoAnual,
                    cotizacionSS,
                    getSexo());
    }
}
